From f2258cb05cfaf96ba146d1244f4a4e2d8bafc1e8 Mon Sep 17 00:00:00 2001 From: Benjamin Otte Date: Sat, 10 May 2014 17:20:11 +0200 Subject: [PATCH] reftests: Create the surface after running the main loop Running the main loop may cause resizes, so creating the surface based on the size before running it seems wrong. --- testsuite/reftests/gtk-reftest.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/testsuite/reftests/gtk-reftest.c b/testsuite/reftests/gtk-reftest.c index 3cb8d0cb92..6ba539924f 100644 --- a/testsuite/reftests/gtk-reftest.c +++ b/testsuite/reftests/gtk-reftest.c @@ -232,11 +232,6 @@ snapshot_widget (GtkWidget *widget, SnapshotMode mode) g_assert (gtk_widget_get_realized (widget)); - surface = gdk_window_create_similar_surface (gtk_widget_get_window (widget), - CAIRO_CONTENT_COLOR, - gtk_widget_get_allocated_width (widget), - gtk_widget_get_allocated_height (widget)); - loop = g_main_loop_new (NULL, FALSE); /* We wait until the widget is drawn for the first time. * We can not wait for a GtkWidget::draw event, because that might not @@ -246,6 +241,11 @@ snapshot_widget (GtkWidget *widget, SnapshotMode mode) gdk_event_handler_set (check_for_draw, loop, NULL); g_main_loop_run (loop); + surface = gdk_window_create_similar_surface (gtk_widget_get_window (widget), + CAIRO_CONTENT_COLOR, + gtk_widget_get_allocated_width (widget), + gtk_widget_get_allocated_height (widget)); + cr = cairo_create (surface); switch (mode) -- 2.30.2